Perception supporting hardware features for a wheelchair accessible autonomous vehicle

ABSTRACT

The subject disclosure relates to features for improving wheelchair accessibility in autonomous vehicles (AVs) and in particular, for enabling automatic ingress/egress of a wheelchair ramp to facilitate the loading and unloading of a passenger wheelchair. In some aspects, a process of the disclosed technology includes steps for identifying one or more visual reference features on at least one surface of an autonomous vehicle (AV), automatically deploying a ramp to facilitate ingress of a wheelchair, and tracking ingress of the wheelchair based on the one or more visual reference features. Systems and machine-readable media are also provided.

BACKGROUND 1. Technical Field

The subject technology provides solutions for improving wheelchairaccessibility in autonomous vehicles (AVs) and in particular, forenabling automatic ingress/egress of a wheelchair ramp to facilitate theloading and unloading of a passenger wheelchair.

2. Introduction

Autonomous vehicles (AVs) are vehicles having computers and controlsystems that perform driving and navigation tasks that areconventionally performed by a human driver. As AV technologies continueto advance, ride-sharing services will increasingly utilize AVs toimprove service efficiency and safety. However, for effective use inride-sharing deployments, AVs will be required to perform many of thefunctions that are conventionally performed by human drivers, such asperforming navigation and routing tasks necessary to provide a safe andefficient ride service. Such tasks may require the collection andprocessing of large quantities of data using various sensor types,including but not limited to cameras and/or Light Detection and Ranging(LiDAR) sensors disposed on the AV.

BRIEF DESCRIPTION OF THE DRAWINGS

Certain features of the subject technology are set forth in the appendedclaims. However, the accompanying drawings, which are included toprovide further understanding, illustrate disclosed aspects and togetherwith the description serve to explain the principles of the subjecttechnology. In the drawings:

FIG. 1 illustrates an example system environment that can be used tofacilitate AV navigation and routing operations, according to someaspects of the disclosed technology.

FIG. 2 illustrates an example accessibility system that facilitates AVingress/egress of a wheelchair, according to some aspects of thedisclosed technology.

FIG. 3 illustrates an example of an automated wheelchair ingress/egressprocess, according to some aspects of the disclosed technology.

FIGS. 4A and 4B illustrate an example of a wheelchair ingress into anAV, according to some aspects of the disclosed technology.

FIGS. 5A and 5B illustrate an example of the continued wheelchairingress into an AV, according to some aspects of the disclosedtechnology.

FIGS. 6A and 6B illustrate examples of how a wheelchair can be securedusing an automatic restraint system, according to some aspects of thedisclosed technology.

FIG. 7 illustrates an example processor-based system with which someaspects of the subject technology can be implemented.

DETAILED DESCRIPTION

The detailed description set forth below is intended as a description ofvarious configurations of the subject technology and is not intended torepresent the only configurations in which the subject technology can bepracticed. The appended drawings are incorporated herein and constitutea part of the detailed description. The detailed description includesspecific details for the purpose of providing a more thoroughunderstanding of the subject technology. However, it will be clear andapparent that the subject technology is not limited to the specificdetails set forth herein and may be practiced without these details. Insome instances, structures and components are shown in block diagramform in order to avoid obscuring the concepts of the subject technology.

As described herein, one aspect of the present technology is thegathering and use of data available from various sources to improvequality and experience. The present disclosure contemplates that in someinstances, this gathered data may include personal information. Thepresent disclosure contemplates that the entities involved with suchpersonal information respect and value privacy policies and practices.

In conventional ridesharing arrangements, human drivers assistpassengers with accessibility into an out of the vehicle. For example,human drivers routinely help passengers load/unload and secureaccessibility equipment, such as a wheelchairs and other mobilitydevices. Because human drivers are absent from autonomous vehicle (AV)deployments, there exists a need to provide automated support for theingress/egress for passengers with special accessibility needs.

Aspects of the disclosed technology address the foregoing limitations byproviding perception supporting hardware features that facilitate theloading and unloading (ingress/egress) of mobility devices, such aswheelchairs and/or personal scooters. In some aspects, the disclosedtechnology includes AV sensors, e.g. cameras and/or Light Detection andRanging (LiDAR) sensors that are configured to provide perceptioncapabilities to the computing systems of the wheelchair accessiblevehicle (WAV). In some approaches, an AV of the disclosed technology caninclude reference markers that are disposed on or around certain AVfeatures, such as on a wheelchair ramp, to facilitate AV perception ofthe accessibility equipment loading/unloading process. Additionally, asdiscussed in further detail below, a restraint system of the AV can beconfigured to automatically secure one or more pieces of equipment, suchas a wheelchair, before a ride is commenced.

The disclosure now turns to FIG. 1, which illustrates an example systemenvironment 100 that can be used to facilitate AV dispatch andoperations, according to some aspects of the disclosed technology.Autonomous vehicle 102 can navigate about roadways without a humandriver based upon sensor signals output by sensor systems 104-106 ofautonomous vehicle 102. Autonomous vehicle 102 includes a plurality ofsensor systems 104-106 (a first sensor system 104 through an Nth sensorsystem 106). Sensor systems 104-106 are of different types and arearranged about the autonomous vehicle 102. For example, first sensorsystem 104 may be a camera sensor system and the Nth sensor system 106may be a Light Detection and Ranging (LIDAR) sensor system. Otherexemplary sensor systems include radio detection and ranging (RADAR)sensor systems, Electromagnetic Detection and Ranging (EmDAR) sensorsystems, Sound Navigation and Ranging (SONAR) sensor systems, SoundDetection and Ranging (SODAR) sensor systems, Global NavigationSatellite System (GNSS) receiver systems such as Global PositioningSystem (GPS) receiver systems, accelerometers, gyroscopes, inertialmeasurement units (IMU), infrared sensor systems, laser rangefindersystems, ultrasonic sensor systems, infrasonic sensor systems,microphones, or a combination thereof. While four sensors 180 areillustrated coupled to the autonomous vehicle 102, it is understood thatmore or fewer sensors may be coupled to the autonomous vehicle 102.

Autonomous vehicle 102 further includes several mechanical systems thatare used to effectuate appropriate motion of the autonomous vehicle 102.For instance, the mechanical systems can include but are not limited to,vehicle propulsion system 130, braking system 132, and steering system134. Vehicle propulsion system 130 may include an electric motor, aninternal combustion engine, or both. The braking system 132 can includean engine brake, brake pads, actuators, and/or any other suitablecomponentry that is configured to assist in decelerating autonomousvehicle 102. In some cases, braking system 132 may charge a battery ofthe vehicle through regenerative braking. Steering system 134 includessuitable componentry that is configured to control the direction ofmovement of the autonomous vehicle 102 during navigation. Autonomousvehicle 102 further includes a safety system 136 that can includevarious lights and signal indicators, parking brake, airbags, etc.Autonomous vehicle 102 further includes a cabin system 138 that caninclude cabin temperature control systems, in-cabin entertainmentsystems, etc.

Autonomous vehicle 102 additionally comprises an internal computingsystem 110 that is in communication with sensor systems 180 and systems130, 132, 134, 136, and 138. Internal computing system 110 includes atleast one processor and at least one memory having computer-executableinstructions that are executed by the processor. The computer-executableinstructions can make up one or more services responsible forcontrolling autonomous vehicle 102, communicating with remote computingsystem 150, receiving inputs from passengers or human co-pilots, loggingmetrics regarding data collected by sensor systems 180 and humanco-pilots, etc.

Internal computing system 110 can include a control service 112 that isconfigured to control operation of vehicle propulsion system 130,braking system 132, steering system 134, safety system 136, and cabinsystem 138. Control service 112 receives sensor signals from sensorsystems 180 as well communicates with other services of internalcomputing system 110 to effectuate operation of autonomous vehicle 102.In some embodiments, control service 112 may carry out operations inconcert one or more other systems of autonomous vehicle 102. Internalcomputing system 110 can also include constraint service 114 tofacilitate safe propulsion of autonomous vehicle 102. Constraint service116 includes instructions for activating a constraint based on arule-based restriction upon operation of autonomous vehicle 102. Forexample, the constraint may be a restriction upon navigation that isactivated in accordance with protocols configured to avoid occupying thesame space as other objects, abide by traffic laws, circumvent avoidanceareas, etc. In some embodiments, the constraint service can be part ofcontrol service 112.

The internal computing system 110 can also include communication service116. The communication service 116 can include both software andhardware elements for transmitting and receiving signals from/to theremote computing system 150. Communication service 116 is configured totransmit information wirelessly over a network, for example, through anantenna array that provides personal cellular (long-term evolution(LTE), 3G, 4G, 5G, etc.) communication.

Internal computing system 110 can also include latency service 118.Latency service 118 can utilize timestamps on communications to and fromremote computing system 150 to determine if a communication has beenreceived from the remote computing system 150 in time to be useful. Forexample, when a service of the internal computing system 110 requestsfeedback from remote computing system 150 on a time-sensitive process,the latency service 118 can determine if a response was timely receivedfrom remote computing system 150 as information can quickly become toostale to be actionable. When the latency service 118 determines that aresponse has not been received within a threshold, latency service 118can enable other systems of autonomous vehicle 102 or a passenger tomake necessary decisions or to provide the needed feedback.

Internal computing system 110 can also include a user interface service120 that can communicate with cabin system 138 in order to provideinformation or receive information to a human co-pilot or humanpassenger. In some embodiments, a human co-pilot or human passenger maybe required to evaluate and override a constraint from constraintservice 114, or the human co-pilot or human passenger may wish toprovide an instruction to the autonomous vehicle 102 regardingdestinations, requested routes, or other requested operations.

As described above, the remote computing system 150 is configured tosend/receive a signal from the autonomous vehicle 140 regardingreporting data for training and evaluating machine learning algorithms,requesting assistance from remote computing system 150 or a humanoperator via the remote computing system 150, software service updates,rideshare pickup and drop off instructions, etc.

Remote computing system 150 includes an analysis service 152 that isconfigured to receive data from autonomous vehicle 102 and analyze thedata to train or evaluate machine learning algorithms for operating theautonomous vehicle 102. The analysis service 152 can also performanalysis pertaining to data associated with one or more errors orconstraints reported by autonomous vehicle 102. Remote computing system150 can also include a user interface service 154 configured to presentmetrics, video, pictures, sounds reported from the autonomous vehicle102 to an operator of remote computing system 150. User interfaceservice 154 can further receive input instructions from an operator thatcan be sent to the autonomous vehicle 102.

Remote computing system 150 can also include an instruction service 156for sending instructions regarding the operation of the autonomousvehicle 102. For example, in response to an output of the analysisservice 152 or user interface service 154, instructions service 156 canprepare instructions to one or more services of the autonomous vehicle102 or a co-pilot or passenger of the autonomous vehicle 102. Remotecomputing system 150 can also include rideshare service 158 configuredto interact with ridesharing applications 170 operating on (potential)passenger computing devices. Rideshare service 158 can receive requeststo be picked up or dropped off from passenger ridesharing app 170 andcan dispatch autonomous vehicle 102 for the trip. The rideshare service158 can also act as an intermediary between the ridesharing app 170 andthe autonomous vehicle wherein a passenger might provide instructions tothe autonomous vehicle to 102 go around an obstacle, change routes, honkthe horn, etc. Remote computing system 150 can, in some cases, includeat least one computing system 150 as illustrated in or discussed withrespect to FIG. 7, or may include at least a subset of the componentsillustrated in FIG. 7 or discussed with respect to computing system 150.

FIG. 2 illustrates an example accessibility system 200 that facilitatesAV ingress/egress of a wheelchair, according to some aspects of thedisclosed technology. Accessibility system 200 includes communicationmodule 202 that is communicatively coupled to ingress/egress perceptionmodule 204, and vehicle control module 206.

Communication module 202 can be responsible for receiving commandsrelated to the operation of accessibility controls, such as tofacilitate ingress/egress of a wheelchair ramp and/or enlist operationsof an accompanying restraint system. By way of example, communicationsmodule 202 can be configured for communication with a mobile device andassociated applications that can receive requests from a user/rider, andprovide notifications to the rider. As such, communications module 202can facilitate accessibility operations between wheelchair accessibleAV, and various users/riders.

In turn, WAV ingress/egress perception module 204 can provide perceptionneeded to track progress of the ingress/egress of accessibilityequipment, such as by tracking progress in loading or unloading awheelchair from an AV, for example, using a wheelchair ramp. Asdiscussed in further detail below, perception functionalities performedby WAV ingress/egress perception module 204 can be facilitated by one ormore visual cues/markers that are disposed at locations in the AV.

In conjunction with WAV vehicle controls module 206, WAV ingress/egressperception module 204 can provide functionality needed to automate theassistance process, for example by deploying a wheelchair ramp, trackingthe progress of the conveyance of accessibility equipment into the AV,and securing the accessibility equipment using an automated restraintsystem (not shown).

FIG. 3 illustrates an example of an automated wheelchair ingress/egressprocess 300, according to some aspects of the disclosed technology.Process 300 begins with step 302 in which one or more visual referencefeatures (e.g., one or more reflective markers) are identified (e.g. bya perception system of the AV) on at least one surface of the AV. Insome approaches, multiple reference features of known locations can beused to ascertain the location of equipment within the AV, such as thedeployment and retraction of a wheelchair ramp, as well as to trackposition/location information for one or more pieces of accessibilityequipment and/or people boarding or exiting the AV cabin.

By way of example, location information may be ascertained about thewheelchair ramp position and/or a loading status of a wheelchair beingloaded or unloaded from the AV based on visual obstructions between oneor more of the reference features and one or more AV sensors (e.g.cameras and/or LiDAR sensors, etc.). Although visual markers can be usedin some embodiments, it is understood that the perception system of thedisclosed technology can be configured to perform tracking and locationdeterminations using only AV sensors (e.g., cameras and/or LiDARsensors, etc.).

In step 304, a ramp of the AV is automatically deployed to facilitatethe ingress of one or more items of mobility equipment (e.g., awheelchair). It is understood that other aspects of the AV operation canalso be automatically controlled, such as the opening and closing of oneor more doors of the AV and/or the automatic harness/release of arestraint system, as discussed in further detail below.

In step 306, ingress of the mobility equipment (wheelchair) is trackedusing the reference features. By way of example, visual obstruction ofone or more reference features disposed on the wheelchair ramp mayindicate a position of the wheelchair on the ramp. Tracking can alsocontinue using one or more visual features that are disposed inside theAV cabin.

In step 308, the mobility equipment can be automatically secured withina cabin of the AV. Similar to step 306, the maneuver and automaticrestraint of mobility equipment can be aided using location/positionperception that is performed using one or more visual features. However,location/position tracking without the use of visual markers iscontemplated. For example, tracking necessary to perform ingress/egressoperations may be performed using AV sensor data that is provided to amachine-learning model.

FIGS. 4A and 4B illustrate examples of a wheelchair ingress into an AV400, according to some aspects of the disclosed technology. Inparticular, FIG. 4A illustrates an AV 400A in which a wheelchair 402A isbeing readied for loading into a cabin 404 of AV 400A, e.g., via ramp406. In this example, visual markers 408 (reflective markers) aredisposed at various locations on a surface of ramp 406, and on varioussurface locations within cabin 404 of AV 400. Although visual markers408 are used in the illustrated examples, it is understood that thevisual markers may include any visual patterns, for example, that areintegrated as features of the AV's design.

In the example of FIG. 4B, wheelchair 402B has been moved onto ramp 406.In this position, wheelchair 402B visually obfuscates some of the visualmarkers disposed on ramp 406. In this manner, a position of wheelchair402B can be ascertained, e.g., by a perception system of the AV, forexample, that includes one or more cameras or other optical sensorscapable of detecting the visual markers. In some aspects, the placementand pattern of visual markers can be designed to facilitatedeterminations of wheelchair 402B and/or ramp 406 position.

FIGS. 5A and 5B illustrate example of the continued wheelchair ingressinto an AV 500, according to some aspects of the disclosed technology.In the example of FIG. 5A, wheelchair 502A is shown entering throughopen doors on one side of AV 500A. As discussed above, the positionand/or orientation of wheelchair 502A can be determined (e.g., by aperception system) based on the occlusion of one or more of visual(reflective) markers 408. In FIG. 5B, wheelchair 502B is shown asentirely enclosed within a cabin of AV 500B, for example, before beingsecured by an automatic restraint system 410.

FIGS. 6A and 6B illustrate examples of how wheelchair (602A, 602B,respectively) can be automatically secured using restraint system 410,according to some aspects of the disclosed technology. In theseexamples, wheelchair ramp 406 has been retracted into AV 404. Retractionand deployment of ramp 406 can be performed automatically, based on theprogress of the wheelchair loading and unloading, as determined by theAV's perception system. In the example of FIG. 6A, wheelchair 602A ispositioned adjacent to an automatic restraint system 410. In FIG. 6B,automatic restraint system is shown in a secure position, i.e., makingcontact with wheelchair 602B, so that the wheelchair does not shift asAV 404 is operated. It is understood that various types of automaticrestraint systems are contemplated, without departing from the scope ofthe disclosed technology.

In some aspects, the AV can be configured to send control signals to thewheelchair, for example, to affect wheelchair positioning in a mannerthat facilitates operations of automatic restraint system 410. Forexample, using the perception system (see FIG. 2), the AV can providecontrol signals to the wheelchair (or other assistance device), tofinely adjust the wheelchair's position for faster and more effectiverestraint within the AV cabin. In a similar manner, control signals maybe used to facilitate the unloading of the wheelchair, i.e., byadjusting a position of the wheelchair (forward, backward orside-to-side), to assist the user/rider in unloading the wheelchair fromthe AV cabin.

FIG. 7 illustrates an example processor-based system with which someaspects of the subject technology can be implemented. For example,processor-based system 700 that can be any computing device making upinternal computing system 110, remote computing system 150 and/or apassenger device executing the rideshare app 170, or any componentthereof in which the components of the system are in communication witheach other using connection 705. Connection 705 can be a physicalconnection via a bus, or a direct connection into processor 710, such asin a chipset architecture. Connection 705 can also be a virtualconnection, networked connection, or logical connection.

In some embodiments, computing system 700 is a distributed system inwhich the functions described in this disclosure can be distributedwithin a datacenter, multiple data centers, a peer network, etc. In someembodiments, one or more of the described system components representsmany such components each performing some or all of the function forwhich the component is described. In some embodiments, the componentscan be physical or virtual devices.

Example system 700 includes at least one processing unit (CPU orprocessor) 710 and connection 705 that couples various system componentsincluding system memory 715, such as read-only memory (ROM) 720 andrandom-access memory (RAM) 725 to processor 710. Computing system 700can include a cache of high-speed memory 712 connected directly with, inclose proximity to, and/or integrated as part of processor 710.

Processor 710 can include any general-purpose processor and a hardwareservice or software service, such as services 732, 734, and 736 storedin storage device 730, configured to control processor 710 as well as aspecial-purpose processor where software instructions are incorporatedinto the actual processor design. Processor 710 may essentially be acompletely self-contained computing system, containing multiple cores orprocessors, a bus, memory controller, cache, etc. A multi-core processormay be symmetric or asymmetric.

To enable user interaction, computing system 700 includes an inputdevice 745, which can represent any number of input mechanisms, such asa microphone for speech, a touch-sensitive screen for gesture orgraphical input, keyboard, mouse, motion input, speech, etc. Computingsystem 700 can also include output device 735, which can be one or moreof a number of output mechanisms known to those of skill in the art. Insome instances, multimodal systems can enable a user to provide multipletypes of input/output to communicate with computing system 700.Computing system 700 can include communications interface 740, which cangenerally govern and manage the user input and system output. Thecommunication interface may perform or facilitate receipt and/ortransmission wired or wireless communications via wired and/or wirelesstransceivers, including those making use of an audio jack/plug, amicrophone jack/plug, a universal serial bus (USB) port/plug, an Apple®Lightning® port/plug, an Ethernet port/plug, a fiber optic port/plug, aproprietary wired port/plug, a BLUETOOTH® wireless signal transfer, aBLUETOOTH® low energy (BLE) wireless signal transfer, an IBEACON®wireless signal transfer, a radio-frequency identification (RFID)wireless signal transfer, near-field communications (NFC) wirelesssignal transfer, dedicated short range communication (DSRC) wirelesssignal transfer, 802.11 Wi-Fi wireless signal transfer, wireless localarea network (WLAN) signal transfer, Visible Light Communication (VLC),Worldwide Interoperability for Microwave Access (WiMAX), Infrared (IR)communication wireless signal transfer, Public Switched TelephoneNetwork (PSTN) signal transfer, Integrated Services Digital Network(ISDN) signal transfer, 3G/4G/5G/LTE cellular data network wirelesssignal transfer, ad-hoc network signal transfer, radio wave signaltransfer, microwave signal transfer, infrared signal transfer, visiblelight signal transfer, ultraviolet light signal transfer, wirelesssignal transfer along the electromagnetic spectrum, or some combinationthereof.

Communications interface 740 may also include one or more GlobalNavigation Satellite System (GNSS) receivers or transceivers that areused to determine a location of the computing system 700 based onreceipt of one or more signals from one or more satellites associatedwith one or more GNSS systems. GNSS systems include, but are not limitedto, the US-based Global Positioning System (GPS), the Russia-basedGlobal Navigation Satellite System (GLONASS), the China-based BeiDouNavigation Satellite System (BDS), and the Europe-based Galileo GNSS.There is no restriction on operating on any particular hardwarearrangement, and therefore the basic features here may easily besubstituted for improved hardware or firmware arrangements as they aredeveloped.

Storage device 730 can be a non-volatile and/or non-transitorycomputer-readable memory device and can be a hard disk or other types ofcomputer readable media which can store data that are accessible by acomputer, such as magnetic cassettes, flash memory cards, solid statememory devices, digital versatile disks, cartridges, a floppy disk, aflexible disk, a hard disk, magnetic tape, a magnetic strip/stripe, anyother magnetic storage medium, flash memory, memristor memory, any othersolid-state memory, a compact disc read only memory (CD-ROM) opticaldisc, a rewritable compact disc (CD) optical disc, digital video disk(DVD) optical disc, a blu-ray disc (BDD) optical disc, a holographicoptical disk, another optical medium, a secure digital (SD) card, amicro secure digital (microSD) card, a Memory Stick® card, a smartcardchip, a EMV chip, a subscriber identity module (SIM) card, amini/micro/nano/pico SIM card, another integrated circuit (IC)chip/card, random access memory (RAM), static RAM (SRAM), dynamic RAM(DRAM), read-only memory (ROM), programmable read-only memory (PROM),erasable programmable read-only memory (EPROM), electrically erasableprogrammable read-only memory (EEPROM), flash EPROM (FLASHEPROM), cachememory (L1/L2/L3/L4/L5/L#), resistive random-access memory (RRAM/ReRAM),phase change memory (PCM), spin transfer torque RAM (STT-RAM), anothermemory chip or cartridge, and/or a combination thereof.

Storage device 730 can include software services, servers, services,etc., that when the code that defines such software is executed by theprocessor 710, it causes the system to perform a function. In someembodiments, a hardware service that performs a particular function caninclude the software component stored in a computer-readable medium inconnection with the necessary hardware components, such as processor710, connection 705, output device 735, etc., to carry out the function.

As understood by those of skill in the art, machine-learning basedclassification techniques can vary depending on the desiredimplementation. For example, machine-learning classification schemes canutilize one or more of the following, alone or in combination: hiddenMarkov models; recurrent neural networks; convolutional neural networks(CNNs); deep learning; Bayesian symbolic methods; general adversarialnetworks (GANs); support vector machines; image registration methods;applicable rule-based system. Where regression algorithms are used, theymay include including but are not limited to: a Stochastic GradientDescent Regressor, and/or a Passive Aggressive Regressor, etc.

Machine learning classification models can also be based on clusteringalgorithms (e.g., a Mini-batch K-means clustering algorithm), arecommendation algorithm (e.g., a Miniwise Hashing algorithm, orEuclidean Locality-Sensitive Hashing (LSH) algorithm), and/or an anomalydetection algorithm, such as a Local outlier factor. Additionally,machine-learning models can employ a dimensionality reduction approach,such as, one or more of: a Mini-batch Dictionary Learning algorithm, anIncremental Principal Component Analysis (PCA) algorithm, a LatentDirichlet Allocation algorithm, and/or a Mini-batch K-means algorithm,etc.

FIG. 7 illustrates an example processor-based system with which someaspects of the subject technology can be implemented. Specifically, FIG.7 illustrates system architecture 700 wherein the components of thesystem are in electrical communication with each other using a bus 705.System architecture 700 can include a processing unit (CPU or processor)710, as well as a cache 712, that are variously coupled to system bus705. Bus 705 couples various system components including system memory715, (e.g., read only memory (ROM) 720 and random access memory (RAM)725, to processor 710.

System architecture 700 can include a cache of high-speed memoryconnected directly with, in close proximity to, or integrated as part ofthe processor 710. System architecture 700 can copy data from the memory715 and/or the storage device 730 to the cache 712 for quick access bythe processor 710. In this way, the cache can provide a performanceboost that avoids processor 710 delays while waiting for data. These andother modules can control or be configured to control the processor 710to perform various actions. Other system memory 715 may be available foruse as well. Memory 715 can include multiple different types of memorywith different performance characteristics. Processor 710 can includeany general purpose processor and a hardware module or software module,such as module 1 (732), module 2 (734), and module 3 (736) stored instorage device 730, configured to control processor 710 as well as aspecial-purpose processor where software instructions are incorporatedinto the actual processor design. Processor 710 may essentially be acompletely self-contained computing system, containing multiple cores orprocessors, a bus, memory controller, cache, etc. A multi-core processormay be symmetric or asymmetric.

To enable user interaction with the computing system architecture 700,an input device 745 can represent any number of input mechanisms, suchas a microphone for speech, a touch-sensitive screen for gesture orgraphical input, keyboard, mouse, motion input, speech and so forth. Anoutput device 735 can also be one or more of a number of outputmechanisms. In some instances, multimodal systems can enable a user toprovide multiple types of input to communicate with the computing systemarchitecture 700. Communications interface 740 can generally govern andmanage the user input and system output. There is no restriction onoperating on any particular hardware arrangement and therefore the basicfeatures here may easily be substituted for improved hardware orfirmware arrangements as they are developed.

Storage device 730 is a non-volatile memory and can be a hard disk orother types of computer readable media which can store data that areaccessible by a computer, such as magnetic cassettes, flash memorycards, solid state memory devices, digital versatile disks, cartridges,random access memories (RAMs) 725, read only memory (ROM) 720, andhybrids thereof.

Storage device 730 can include software modules 732, 734, 736 forcontrolling processor 710. Other hardware or software modules arecontemplated. Storage device 730 can be connected to the system bus 705.In one aspect, a hardware module that performs a particular function caninclude the software component stored in a computer-readable medium inconnection with the necessary hardware components, such as the processor710, bus 705, output device 735, and so forth, to carry out variousfunctions of the disclosed technology.

By way of example, instruction stored on computer-readable media can beconfigured to cause one or more processors to perform operationsincluding: receiving, at an AV computing system, a first dispatchrequest, wherein the first dispatch request is associated with a firstuser identifier (ID), receiving, at the AV computing system, a firstrecognition model, wherein the first recognition model corresponds withthe first user ID, receiving, at the AV computing system, an imagestream comprising one or more images of pedestrian faces, and providingthe one or more images to the first recognition model. In some aspects,the instructions can further cause processors 710 to perform operationsfor: determining, using the first recognition model, if a first userrepresented in the one or more images corresponds with the first userID, unlocking a door of the AV in response to a match between at leastone of the one or more images and the first user ID, and/or updating thefirst recognition model in response to a match between at least one ofthe one or more images and the first user ID.

In some aspects, memory stored operations/instructions can be configuredto further cause processors 710 to perform operations for: receiving asecond recognition model corresponding with a second user ID, providingthe one or more images to the second recognition model, and determining,using the second recognition model, if a second user represented by theone or more images corresponds with the second user ID. In someapproaches, the operations may further cause the processors to performoperations for unlocking a door of the AV in response to a match betweenat least one of the one or more images and the second user ID.

Depending on the desired implementation, the first recognition model canbe a machine-learning model that has been trained using a plurality offacial images of the first user, and wherein the second recognitionmodel is a machine-learning model that has been trained using aplurality of facial images of the second user.

Embodiments within the scope of the present disclosure may also includetangible and/or non-transitory computer-readable storage media ordevices for carrying or having computer-executable instructions or datastructures stored thereon. Such tangible computer-readable storagedevices can be any available device that can be accessed by a generalpurpose or special purpose computer, including the functional design ofany special purpose processor as described above. By way of example, andnot limitation, such tangible computer-readable devices can include RAM,ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storageor other magnetic storage devices, or any other device which can be usedto carry or store desired program code in the form ofcomputer-executable instructions, data structures, or processor chipdesign. When information or instructions are provided via a network oranother communications connection (either hardwired, wireless, orcombination thereof) to a computer, the computer properly views theconnection as a computer-readable medium. Thus, any such connection isproperly termed a computer-readable medium. Combinations of the aboveshould also be included within the scope of the computer-readablestorage devices.

Computer-executable instructions include, for example, instructions anddata which cause a general-purpose computer, special purpose computer,or special purpose processing device to perform a certain function orgroup of functions. Computer-executable instructions also includeprogram modules that are executed by computers in stand-alone or networkenvironments. Generally, program modules include routines, programs,components, data structures, objects, and the functions inherent in thedesign of special-purpose processors, etc. that perform tasks orimplement abstract data types. Computer-executable instructions,associated data structures, and program modules represent examples ofthe program code means for executing steps of the methods disclosedherein. The particular sequence of such executable instructions orassociated data structures represents examples of corresponding acts forimplementing the functions described in such steps.

Other embodiments of the disclosure may be practiced in networkcomputing environments with many types of computer systemconfigurations, including personal computers, hand-held devices,multi-processor systems, microprocessor-based or programmable consumerelectronics, network PCs, minicomputers, mainframe computers, and thelike. Embodiments may also be practiced in distributed computingenvironments where tasks are performed by local and remote processingdevices that are linked (either by hardwired links, wireless links, orby a combination thereof) through a communications network. In adistributed computing environment, program modules can be located inboth local and remote memory storage devices.

The various embodiments described above are provided by way ofillustration only and should not be construed to limit the scope of thedisclosure. For example, the principles herein apply equally tooptimization as well as general improvements. Various modifications andchanges may be made to the principles described herein without followingthe example embodiments and applications illustrated and describedherein, and without departing from the spirit and scope of thedisclosure. Claim language reciting “at least one of” a set indicatesthat one member of the set or multiple members of the set satisfy theclaim.

What is claimed is:
 1. A system for facilitating ingress and egress of awheelchair into an autonomous vehicle (AV), comprising: one or moreprocessors; one or more autonomous vehicle (AV) sensors coupled to theone or more processors; and a computer-readable medium coupled to theone or more processors, wherein the computer-readable medium comprisesinstructions, which when executed by the processors, cause theprocessors to perform operations comprising: identify one or more visualreference features on at least one surface of the AV; automaticallydeploying a ramp to facilitate ingress of the wheelchair; and trackingan ingress of the wheelchair based on the one or more referencefeatures.
 2. The system of claim 1, wherein the processors are furtherconfigured to execute operations comprising: automatically securing thewheelchair within a cabin of the AV.
 3. The system of claim 1 wherein,the processors are further configured to execute operations comprising:automatically deploying the ramp to facilitate egress of the wheelchair;and tracking and egress of the wheelchair based on the one or morereference features.
 4. The system of claim 1, wherein the one or morereference features are disposed on the ramp.
 5. The system of claim 1,wherein the one or more reference features comprises at least onereflective marker.
 6. The system of claim 1, wherein tracking theingress of the wheelchair is further based on obfuscation of at leastone of the one or more reference features by the wheelchair.
 7. Thesystem of claim 1, wherein at least one of the one or more referencefeatures are disposed on an interior surface of an AV cabin.
 8. Acomputer-implemented method comprising: identifying one or morereference features on at least one surface of an autonomous vehicle(AV); automatically deploying a ramp to facilitate ingress of awheelchair; and tracking ingress of the wheelchair based on the one ormore reference features.
 9. The method of claim 8, wherein theprocessors are further comprising: automatically securing the wheelchairwithin a cabin of the AV.
 10. The method of claim 8 wherein, furthercomprising: automatically deploying the ramp to facilitate egress of thewheelchair; and tracking and egress of the wheelchair based on the oneor more reference features.
 11. The method of claim 8, wherein the oneor more reference features are disposed on the ramp.
 12. The method ofclaim 8, wherein the one or more reference features comprises at leastone reflective marker.
 13. The method of claim 8, wherein tracking theingress of the wheelchair is further based on obfuscation of at leastone of the one or more reference features by the wheelchair.
 14. Themethod of claim 8, wherein at least one of the one or more referencefeatures are disposed on an interior surface of an AV cabin.
 15. Anon-transitory computer-readable storage medium comprising instructionsstored therein, which when executed by one or more processors, cause theprocessors to perform operations comprising: identifying one or morereference features on at least one surface of an autonomous vehicle(AV); automatically deploying a ramp to facilitate ingress of awheelchair; and tracking an ingress of the wheelchair based on the oneor more reference features.
 16. The non-transitory computer-readablestorage medium of claim 15, wherein the processors are furtherconfigured to execute operations comprising: automatically securing thewheelchair within a cabin of the AV.
 17. The non-transitorycomputer-readable storage medium of claim 15, wherein the processors arefurther configured to perform operations comprising: automaticallydeploying the ramp to facilitate egress of the wheelchair; and trackingand egress of the wheelchair based on the one or more referencefeatures.
 18. The non-transitory computer-readable storage medium ofclaim 15, wherein the one or more reference features are disposed on theramp.
 19. The non-transitory computer-readable storage medium of claim15, wherein the one or more reference features comprises at least onereflective marker.
 20. The non-transitory computer-readable storagemedium of claim 15, wherein tracking the ingress of the wheelchair isfurther based on obfuscation of at least one of the one or more visualfeatures by the wheelchair.